package de.haw.HES.Buchhaltung;

import java.sql.Date;
import java.util.List;

import javax.persistence.CascadeType;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.OneToMany;
import javax.persistence.Table;

import de.haw.HES.base.FachObjekt;

@Entity
@Table(name = "inkasso_Rechnung")
public class Rechnung implements FachObjekt {
	
	public static final String tableName = "inkasso_Rechnung";

	private int id;
	@Id
	@GeneratedValue
	public int getId() {
		return id;
	}

	public void setId(int id) {
		this.id = id;
	}

	public Date getEingangsDatum() {
		return eingangsDatum;
	}

	public void setEingangsDatum(Date eingangsDatum) {
		this.eingangsDatum = eingangsDatum;
	}

	public boolean isIstBezahlt() {
		return istBezahlt;
	}

	public void setIstBezahlt(boolean istBezahlt) {
		this.istBezahlt = istBezahlt;
	}

	private Date eingangsDatum;
	@OneToMany(targetEntity = Zahlungseingang.class, mappedBy = "rechnung", cascade = CascadeType.ALL, fetch = FetchType.EAGER)
	public List<Zahlungseingang> getZahlungseingang() {
		return zahlungseingang;
	}

	public void setZahlungseingang(List<Zahlungseingang> zahlungseingang) {
		this.zahlungseingang = zahlungseingang;
	}

	private boolean istBezahlt;
	private List<Zahlungseingang> zahlungseingang;
	private double rechnungsBetrag;
	public double getRechnungsBetrag() {
		return rechnungsBetrag;
	}

	public void setRechnungsBetrag(double rechnungsBetrag) {
		this.rechnungsBetrag = rechnungsBetrag;
	}
	

}
